package com.wanda.po;

import java.util.ArrayList;
import java.util.List;

public class OpeningExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public OpeningExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andProjectnameIsNull() {
            addCriterion("projectName is null");
            return (Criteria) this;
        }

        public Criteria andProjectnameIsNotNull() {
            addCriterion("projectName is not null");
            return (Criteria) this;
        }

        public Criteria andProjectnameEqualTo(String value) {
            addCriterion("projectName =", value, "projectname");
            return (Criteria) this;
        }

        public Criteria andProjectnameNotEqualTo(String value) {
            addCriterion("projectName <>", value, "projectname");
            return (Criteria) this;
        }

        public Criteria andProjectnameGreaterThan(String value) {
            addCriterion("projectName >", value, "projectname");
            return (Criteria) this;
        }

        public Criteria andProjectnameGreaterThanOrEqualTo(String value) {
            addCriterion("projectName >=", value, "projectname");
            return (Criteria) this;
        }

        public Criteria andProjectnameLessThan(String value) {
            addCriterion("projectName <", value, "projectname");
            return (Criteria) this;
        }

        public Criteria andProjectnameLessThanOrEqualTo(String value) {
            addCriterion("projectName <=", value, "projectname");
            return (Criteria) this;
        }

        public Criteria andProjectnameLike(String value) {
            addCriterion("projectName like", value, "projectname");
            return (Criteria) this;
        }

        public Criteria andProjectnameNotLike(String value) {
            addCriterion("projectName not like", value, "projectname");
            return (Criteria) this;
        }

        public Criteria andProjectnameIn(List<String> values) {
            addCriterion("projectName in", values, "projectname");
            return (Criteria) this;
        }

        public Criteria andProjectnameNotIn(List<String> values) {
            addCriterion("projectName not in", values, "projectname");
            return (Criteria) this;
        }

        public Criteria andProjectnameBetween(String value1, String value2) {
            addCriterion("projectName between", value1, value2, "projectname");
            return (Criteria) this;
        }

        public Criteria andProjectnameNotBetween(String value1, String value2) {
            addCriterion("projectName not between", value1, value2, "projectname");
            return (Criteria) this;
        }

        public Criteria andReportnameIsNull() {
            addCriterion("reportName is null");
            return (Criteria) this;
        }

        public Criteria andReportnameIsNotNull() {
            addCriterion("reportName is not null");
            return (Criteria) this;
        }

        public Criteria andReportnameEqualTo(String value) {
            addCriterion("reportName =", value, "reportname");
            return (Criteria) this;
        }

        public Criteria andReportnameNotEqualTo(String value) {
            addCriterion("reportName <>", value, "reportname");
            return (Criteria) this;
        }

        public Criteria andReportnameGreaterThan(String value) {
            addCriterion("reportName >", value, "reportname");
            return (Criteria) this;
        }

        public Criteria andReportnameGreaterThanOrEqualTo(String value) {
            addCriterion("reportName >=", value, "reportname");
            return (Criteria) this;
        }

        public Criteria andReportnameLessThan(String value) {
            addCriterion("reportName <", value, "reportname");
            return (Criteria) this;
        }

        public Criteria andReportnameLessThanOrEqualTo(String value) {
            addCriterion("reportName <=", value, "reportname");
            return (Criteria) this;
        }

        public Criteria andReportnameLike(String value) {
            addCriterion("reportName like", value, "reportname");
            return (Criteria) this;
        }

        public Criteria andReportnameNotLike(String value) {
            addCriterion("reportName not like", value, "reportname");
            return (Criteria) this;
        }

        public Criteria andReportnameIn(List<String> values) {
            addCriterion("reportName in", values, "reportname");
            return (Criteria) this;
        }

        public Criteria andReportnameNotIn(List<String> values) {
            addCriterion("reportName not in", values, "reportname");
            return (Criteria) this;
        }

        public Criteria andReportnameBetween(String value1, String value2) {
            addCriterion("reportName between", value1, value2, "reportname");
            return (Criteria) this;
        }

        public Criteria andReportnameNotBetween(String value1, String value2) {
            addCriterion("reportName not between", value1, value2, "reportname");
            return (Criteria) this;
        }

        public Criteria andReporttypeIsNull() {
            addCriterion("reportType is null");
            return (Criteria) this;
        }

        public Criteria andReporttypeIsNotNull() {
            addCriterion("reportType is not null");
            return (Criteria) this;
        }

        public Criteria andReporttypeEqualTo(String value) {
            addCriterion("reportType =", value, "reporttype");
            return (Criteria) this;
        }

        public Criteria andReporttypeNotEqualTo(String value) {
            addCriterion("reportType <>", value, "reporttype");
            return (Criteria) this;
        }

        public Criteria andReporttypeGreaterThan(String value) {
            addCriterion("reportType >", value, "reporttype");
            return (Criteria) this;
        }

        public Criteria andReporttypeGreaterThanOrEqualTo(String value) {
            addCriterion("reportType >=", value, "reporttype");
            return (Criteria) this;
        }

        public Criteria andReporttypeLessThan(String value) {
            addCriterion("reportType <", value, "reporttype");
            return (Criteria) this;
        }

        public Criteria andReporttypeLessThanOrEqualTo(String value) {
            addCriterion("reportType <=", value, "reporttype");
            return (Criteria) this;
        }

        public Criteria andReporttypeLike(String value) {
            addCriterion("reportType like", value, "reporttype");
            return (Criteria) this;
        }

        public Criteria andReporttypeNotLike(String value) {
            addCriterion("reportType not like", value, "reporttype");
            return (Criteria) this;
        }

        public Criteria andReporttypeIn(List<String> values) {
            addCriterion("reportType in", values, "reporttype");
            return (Criteria) this;
        }

        public Criteria andReporttypeNotIn(List<String> values) {
            addCriterion("reportType not in", values, "reporttype");
            return (Criteria) this;
        }

        public Criteria andReporttypeBetween(String value1, String value2) {
            addCriterion("reportType between", value1, value2, "reporttype");
            return (Criteria) this;
        }

        public Criteria andReporttypeNotBetween(String value1, String value2) {
            addCriterion("reportType not between", value1, value2, "reporttype");
            return (Criteria) this;
        }

        public Criteria andOpeningdateIsNull() {
            addCriterion("openingDate is null");
            return (Criteria) this;
        }

        public Criteria andOpeningdateIsNotNull() {
            addCriterion("openingDate is not null");
            return (Criteria) this;
        }

        public Criteria andOpeningdateEqualTo(String value) {
            addCriterion("openingDate =", value, "openingdate");
            return (Criteria) this;
        }

        public Criteria andOpeningdateNotEqualTo(String value) {
            addCriterion("openingDate <>", value, "openingdate");
            return (Criteria) this;
        }

        public Criteria andOpeningdateGreaterThan(String value) {
            addCriterion("openingDate >", value, "openingdate");
            return (Criteria) this;
        }

        public Criteria andOpeningdateGreaterThanOrEqualTo(String value) {
            addCriterion("openingDate >=", value, "openingdate");
            return (Criteria) this;
        }

        public Criteria andOpeningdateLessThan(String value) {
            addCriterion("openingDate <", value, "openingdate");
            return (Criteria) this;
        }

        public Criteria andOpeningdateLessThanOrEqualTo(String value) {
            addCriterion("openingDate <=", value, "openingdate");
            return (Criteria) this;
        }

        public Criteria andOpeningdateLike(String value) {
            addCriterion("openingDate like", value, "openingdate");
            return (Criteria) this;
        }

        public Criteria andOpeningdateNotLike(String value) {
            addCriterion("openingDate not like", value, "openingdate");
            return (Criteria) this;
        }

        public Criteria andOpeningdateIn(List<String> values) {
            addCriterion("openingDate in", values, "openingdate");
            return (Criteria) this;
        }

        public Criteria andOpeningdateNotIn(List<String> values) {
            addCriterion("openingDate not in", values, "openingdate");
            return (Criteria) this;
        }

        public Criteria andOpeningdateBetween(String value1, String value2) {
            addCriterion("openingDate between", value1, value2, "openingdate");
            return (Criteria) this;
        }

        public Criteria andOpeningdateNotBetween(String value1, String value2) {
            addCriterion("openingDate not between", value1, value2, "openingdate");
            return (Criteria) this;
        }

        public Criteria andValutiontypeIsNull() {
            addCriterion("valutionType is null");
            return (Criteria) this;
        }

        public Criteria andValutiontypeIsNotNull() {
            addCriterion("valutionType is not null");
            return (Criteria) this;
        }

        public Criteria andValutiontypeEqualTo(String value) {
            addCriterion("valutionType =", value, "valutiontype");
            return (Criteria) this;
        }

        public Criteria andValutiontypeNotEqualTo(String value) {
            addCriterion("valutionType <>", value, "valutiontype");
            return (Criteria) this;
        }

        public Criteria andValutiontypeGreaterThan(String value) {
            addCriterion("valutionType >", value, "valutiontype");
            return (Criteria) this;
        }

        public Criteria andValutiontypeGreaterThanOrEqualTo(String value) {
            addCriterion("valutionType >=", value, "valutiontype");
            return (Criteria) this;
        }

        public Criteria andValutiontypeLessThan(String value) {
            addCriterion("valutionType <", value, "valutiontype");
            return (Criteria) this;
        }

        public Criteria andValutiontypeLessThanOrEqualTo(String value) {
            addCriterion("valutionType <=", value, "valutiontype");
            return (Criteria) this;
        }

        public Criteria andValutiontypeLike(String value) {
            addCriterion("valutionType like", value, "valutiontype");
            return (Criteria) this;
        }

        public Criteria andValutiontypeNotLike(String value) {
            addCriterion("valutionType not like", value, "valutiontype");
            return (Criteria) this;
        }

        public Criteria andValutiontypeIn(List<String> values) {
            addCriterion("valutionType in", values, "valutiontype");
            return (Criteria) this;
        }

        public Criteria andValutiontypeNotIn(List<String> values) {
            addCriterion("valutionType not in", values, "valutiontype");
            return (Criteria) this;
        }

        public Criteria andValutiontypeBetween(String value1, String value2) {
            addCriterion("valutionType between", value1, value2, "valutiontype");
            return (Criteria) this;
        }

        public Criteria andValutiontypeNotBetween(String value1, String value2) {
            addCriterion("valutionType not between", value1, value2, "valutiontype");
            return (Criteria) this;
        }

        public Criteria andPriceadjustmentIsNull() {
            addCriterion("priceAdjustment is null");
            return (Criteria) this;
        }

        public Criteria andPriceadjustmentIsNotNull() {
            addCriterion("priceAdjustment is not null");
            return (Criteria) this;
        }

        public Criteria andPriceadjustmentEqualTo(String value) {
            addCriterion("priceAdjustment =", value, "priceadjustment");
            return (Criteria) this;
        }

        public Criteria andPriceadjustmentNotEqualTo(String value) {
            addCriterion("priceAdjustment <>", value, "priceadjustment");
            return (Criteria) this;
        }

        public Criteria andPriceadjustmentGreaterThan(String value) {
            addCriterion("priceAdjustment >", value, "priceadjustment");
            return (Criteria) this;
        }

        public Criteria andPriceadjustmentGreaterThanOrEqualTo(String value) {
            addCriterion("priceAdjustment >=", value, "priceadjustment");
            return (Criteria) this;
        }

        public Criteria andPriceadjustmentLessThan(String value) {
            addCriterion("priceAdjustment <", value, "priceadjustment");
            return (Criteria) this;
        }

        public Criteria andPriceadjustmentLessThanOrEqualTo(String value) {
            addCriterion("priceAdjustment <=", value, "priceadjustment");
            return (Criteria) this;
        }

        public Criteria andPriceadjustmentLike(String value) {
            addCriterion("priceAdjustment like", value, "priceadjustment");
            return (Criteria) this;
        }

        public Criteria andPriceadjustmentNotLike(String value) {
            addCriterion("priceAdjustment not like", value, "priceadjustment");
            return (Criteria) this;
        }

        public Criteria andPriceadjustmentIn(List<String> values) {
            addCriterion("priceAdjustment in", values, "priceadjustment");
            return (Criteria) this;
        }

        public Criteria andPriceadjustmentNotIn(List<String> values) {
            addCriterion("priceAdjustment not in", values, "priceadjustment");
            return (Criteria) this;
        }

        public Criteria andPriceadjustmentBetween(String value1, String value2) {
            addCriterion("priceAdjustment between", value1, value2, "priceadjustment");
            return (Criteria) this;
        }

        public Criteria andPriceadjustmentNotBetween(String value1, String value2) {
            addCriterion("priceAdjustment not between", value1, value2, "priceadjustment");
            return (Criteria) this;
        }

        public Criteria andOpeningroomsIsNull() {
            addCriterion("openingRooms is null");
            return (Criteria) this;
        }

        public Criteria andOpeningroomsIsNotNull() {
            addCriterion("openingRooms is not null");
            return (Criteria) this;
        }

        public Criteria andOpeningroomsEqualTo(String value) {
            addCriterion("openingRooms =", value, "openingrooms");
            return (Criteria) this;
        }

        public Criteria andOpeningroomsNotEqualTo(String value) {
            addCriterion("openingRooms <>", value, "openingrooms");
            return (Criteria) this;
        }

        public Criteria andOpeningroomsGreaterThan(String value) {
            addCriterion("openingRooms >", value, "openingrooms");
            return (Criteria) this;
        }

        public Criteria andOpeningroomsGreaterThanOrEqualTo(String value) {
            addCriterion("openingRooms >=", value, "openingrooms");
            return (Criteria) this;
        }

        public Criteria andOpeningroomsLessThan(String value) {
            addCriterion("openingRooms <", value, "openingrooms");
            return (Criteria) this;
        }

        public Criteria andOpeningroomsLessThanOrEqualTo(String value) {
            addCriterion("openingRooms <=", value, "openingrooms");
            return (Criteria) this;
        }

        public Criteria andOpeningroomsLike(String value) {
            addCriterion("openingRooms like", value, "openingrooms");
            return (Criteria) this;
        }

        public Criteria andOpeningroomsNotLike(String value) {
            addCriterion("openingRooms not like", value, "openingrooms");
            return (Criteria) this;
        }

        public Criteria andOpeningroomsIn(List<String> values) {
            addCriterion("openingRooms in", values, "openingrooms");
            return (Criteria) this;
        }

        public Criteria andOpeningroomsNotIn(List<String> values) {
            addCriterion("openingRooms not in", values, "openingrooms");
            return (Criteria) this;
        }

        public Criteria andOpeningroomsBetween(String value1, String value2) {
            addCriterion("openingRooms between", value1, value2, "openingrooms");
            return (Criteria) this;
        }

        public Criteria andOpeningroomsNotBetween(String value1, String value2) {
            addCriterion("openingRooms not between", value1, value2, "openingrooms");
            return (Criteria) this;
        }

        public Criteria andEarnestidIsNull() {
            addCriterion("earnestId is null");
            return (Criteria) this;
        }

        public Criteria andEarnestidIsNotNull() {
            addCriterion("earnestId is not null");
            return (Criteria) this;
        }

        public Criteria andEarnestidEqualTo(String value) {
            addCriterion("earnestId =", value, "earnestid");
            return (Criteria) this;
        }

        public Criteria andEarnestidNotEqualTo(String value) {
            addCriterion("earnestId <>", value, "earnestid");
            return (Criteria) this;
        }

        public Criteria andEarnestidGreaterThan(String value) {
            addCriterion("earnestId >", value, "earnestid");
            return (Criteria) this;
        }

        public Criteria andEarnestidGreaterThanOrEqualTo(String value) {
            addCriterion("earnestId >=", value, "earnestid");
            return (Criteria) this;
        }

        public Criteria andEarnestidLessThan(String value) {
            addCriterion("earnestId <", value, "earnestid");
            return (Criteria) this;
        }

        public Criteria andEarnestidLessThanOrEqualTo(String value) {
            addCriterion("earnestId <=", value, "earnestid");
            return (Criteria) this;
        }

        public Criteria andEarnestidLike(String value) {
            addCriterion("earnestId like", value, "earnestid");
            return (Criteria) this;
        }

        public Criteria andEarnestidNotLike(String value) {
            addCriterion("earnestId not like", value, "earnestid");
            return (Criteria) this;
        }

        public Criteria andEarnestidIn(List<String> values) {
            addCriterion("earnestId in", values, "earnestid");
            return (Criteria) this;
        }

        public Criteria andEarnestidNotIn(List<String> values) {
            addCriterion("earnestId not in", values, "earnestid");
            return (Criteria) this;
        }

        public Criteria andEarnestidBetween(String value1, String value2) {
            addCriterion("earnestId between", value1, value2, "earnestid");
            return (Criteria) this;
        }

        public Criteria andEarnestidNotBetween(String value1, String value2) {
            addCriterion("earnestId not between", value1, value2, "earnestid");
            return (Criteria) this;
        }

        public Criteria andStateIsNull() {
            addCriterion("state is null");
            return (Criteria) this;
        }

        public Criteria andStateIsNotNull() {
            addCriterion("state is not null");
            return (Criteria) this;
        }

        public Criteria andStateEqualTo(String value) {
            addCriterion("state =", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotEqualTo(String value) {
            addCriterion("state <>", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateGreaterThan(String value) {
            addCriterion("state >", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateGreaterThanOrEqualTo(String value) {
            addCriterion("state >=", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateLessThan(String value) {
            addCriterion("state <", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateLessThanOrEqualTo(String value) {
            addCriterion("state <=", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateLike(String value) {
            addCriterion("state like", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotLike(String value) {
            addCriterion("state not like", value, "state");
            return (Criteria) this;
        }

        public Criteria andStateIn(List<String> values) {
            addCriterion("state in", values, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotIn(List<String> values) {
            addCriterion("state not in", values, "state");
            return (Criteria) this;
        }

        public Criteria andStateBetween(String value1, String value2) {
            addCriterion("state between", value1, value2, "state");
            return (Criteria) this;
        }

        public Criteria andStateNotBetween(String value1, String value2) {
            addCriterion("state not between", value1, value2, "state");
            return (Criteria) this;
        }

        public Criteria andExplainsIsNull() {
            addCriterion("explains is null");
            return (Criteria) this;
        }

        public Criteria andExplainsIsNotNull() {
            addCriterion("explains is not null");
            return (Criteria) this;
        }

        public Criteria andExplainsEqualTo(String value) {
            addCriterion("explains =", value, "explains");
            return (Criteria) this;
        }

        public Criteria andExplainsNotEqualTo(String value) {
            addCriterion("explains <>", value, "explains");
            return (Criteria) this;
        }

        public Criteria andExplainsGreaterThan(String value) {
            addCriterion("explains >", value, "explains");
            return (Criteria) this;
        }

        public Criteria andExplainsGreaterThanOrEqualTo(String value) {
            addCriterion("explains >=", value, "explains");
            return (Criteria) this;
        }

        public Criteria andExplainsLessThan(String value) {
            addCriterion("explains <", value, "explains");
            return (Criteria) this;
        }

        public Criteria andExplainsLessThanOrEqualTo(String value) {
            addCriterion("explains <=", value, "explains");
            return (Criteria) this;
        }

        public Criteria andExplainsLike(String value) {
            addCriterion("explains like", value, "explains");
            return (Criteria) this;
        }

        public Criteria andExplainsNotLike(String value) {
            addCriterion("explains not like", value, "explains");
            return (Criteria) this;
        }

        public Criteria andExplainsIn(List<String> values) {
            addCriterion("explains in", values, "explains");
            return (Criteria) this;
        }

        public Criteria andExplainsNotIn(List<String> values) {
            addCriterion("explains not in", values, "explains");
            return (Criteria) this;
        }

        public Criteria andExplainsBetween(String value1, String value2) {
            addCriterion("explains between", value1, value2, "explains");
            return (Criteria) this;
        }

        public Criteria andExplainsNotBetween(String value1, String value2) {
            addCriterion("explains not between", value1, value2, "explains");
            return (Criteria) this;
        }

        public Criteria andCompositediscountIsNull() {
            addCriterion("compositeDiscount is null");
            return (Criteria) this;
        }

        public Criteria andCompositediscountIsNotNull() {
            addCriterion("compositeDiscount is not null");
            return (Criteria) this;
        }

        public Criteria andCompositediscountEqualTo(Integer value) {
            addCriterion("compositeDiscount =", value, "compositediscount");
            return (Criteria) this;
        }

        public Criteria andCompositediscountNotEqualTo(Integer value) {
            addCriterion("compositeDiscount <>", value, "compositediscount");
            return (Criteria) this;
        }

        public Criteria andCompositediscountGreaterThan(Integer value) {
            addCriterion("compositeDiscount >", value, "compositediscount");
            return (Criteria) this;
        }

        public Criteria andCompositediscountGreaterThanOrEqualTo(Integer value) {
            addCriterion("compositeDiscount >=", value, "compositediscount");
            return (Criteria) this;
        }

        public Criteria andCompositediscountLessThan(Integer value) {
            addCriterion("compositeDiscount <", value, "compositediscount");
            return (Criteria) this;
        }

        public Criteria andCompositediscountLessThanOrEqualTo(Integer value) {
            addCriterion("compositeDiscount <=", value, "compositediscount");
            return (Criteria) this;
        }

        public Criteria andCompositediscountIn(List<Integer> values) {
            addCriterion("compositeDiscount in", values, "compositediscount");
            return (Criteria) this;
        }

        public Criteria andCompositediscountNotIn(List<Integer> values) {
            addCriterion("compositeDiscount not in", values, "compositediscount");
            return (Criteria) this;
        }

        public Criteria andCompositediscountBetween(Integer value1, Integer value2) {
            addCriterion("compositeDiscount between", value1, value2, "compositediscount");
            return (Criteria) this;
        }

        public Criteria andCompositediscountNotBetween(Integer value1, Integer value2) {
            addCriterion("compositeDiscount not between", value1, value2, "compositediscount");
            return (Criteria) this;
        }

        public Criteria andSpecialdiscountIsNull() {
            addCriterion("specialDiscount is null");
            return (Criteria) this;
        }

        public Criteria andSpecialdiscountIsNotNull() {
            addCriterion("specialDiscount is not null");
            return (Criteria) this;
        }

        public Criteria andSpecialdiscountEqualTo(Integer value) {
            addCriterion("specialDiscount =", value, "specialdiscount");
            return (Criteria) this;
        }

        public Criteria andSpecialdiscountNotEqualTo(Integer value) {
            addCriterion("specialDiscount <>", value, "specialdiscount");
            return (Criteria) this;
        }

        public Criteria andSpecialdiscountGreaterThan(Integer value) {
            addCriterion("specialDiscount >", value, "specialdiscount");
            return (Criteria) this;
        }

        public Criteria andSpecialdiscountGreaterThanOrEqualTo(Integer value) {
            addCriterion("specialDiscount >=", value, "specialdiscount");
            return (Criteria) this;
        }

        public Criteria andSpecialdiscountLessThan(Integer value) {
            addCriterion("specialDiscount <", value, "specialdiscount");
            return (Criteria) this;
        }

        public Criteria andSpecialdiscountLessThanOrEqualTo(Integer value) {
            addCriterion("specialDiscount <=", value, "specialdiscount");
            return (Criteria) this;
        }

        public Criteria andSpecialdiscountIn(List<Integer> values) {
            addCriterion("specialDiscount in", values, "specialdiscount");
            return (Criteria) this;
        }

        public Criteria andSpecialdiscountNotIn(List<Integer> values) {
            addCriterion("specialDiscount not in", values, "specialdiscount");
            return (Criteria) this;
        }

        public Criteria andSpecialdiscountBetween(Integer value1, Integer value2) {
            addCriterion("specialDiscount between", value1, value2, "specialdiscount");
            return (Criteria) this;
        }

        public Criteria andSpecialdiscountNotBetween(Integer value1, Integer value2) {
            addCriterion("specialDiscount not between", value1, value2, "specialdiscount");
            return (Criteria) this;
        }

        public Criteria andCommentIsNull() {
            addCriterion("comment is null");
            return (Criteria) this;
        }

        public Criteria andCommentIsNotNull() {
            addCriterion("comment is not null");
            return (Criteria) this;
        }

        public Criteria andCommentEqualTo(String value) {
            addCriterion("comment =", value, "comment");
            return (Criteria) this;
        }

        public Criteria andCommentNotEqualTo(String value) {
            addCriterion("comment <>", value, "comment");
            return (Criteria) this;
        }

        public Criteria andCommentGreaterThan(String value) {
            addCriterion("comment >", value, "comment");
            return (Criteria) this;
        }

        public Criteria andCommentGreaterThanOrEqualTo(String value) {
            addCriterion("comment >=", value, "comment");
            return (Criteria) this;
        }

        public Criteria andCommentLessThan(String value) {
            addCriterion("comment <", value, "comment");
            return (Criteria) this;
        }

        public Criteria andCommentLessThanOrEqualTo(String value) {
            addCriterion("comment <=", value, "comment");
            return (Criteria) this;
        }

        public Criteria andCommentLike(String value) {
            addCriterion("comment like", value, "comment");
            return (Criteria) this;
        }

        public Criteria andCommentNotLike(String value) {
            addCriterion("comment not like", value, "comment");
            return (Criteria) this;
        }

        public Criteria andCommentIn(List<String> values) {
            addCriterion("comment in", values, "comment");
            return (Criteria) this;
        }

        public Criteria andCommentNotIn(List<String> values) {
            addCriterion("comment not in", values, "comment");
            return (Criteria) this;
        }

        public Criteria andCommentBetween(String value1, String value2) {
            addCriterion("comment between", value1, value2, "comment");
            return (Criteria) this;
        }

        public Criteria andCommentNotBetween(String value1, String value2) {
            addCriterion("comment not between", value1, value2, "comment");
            return (Criteria) this;
        }

        public Criteria andComment1IsNull() {
            addCriterion("comment1 is null");
            return (Criteria) this;
        }

        public Criteria andComment1IsNotNull() {
            addCriterion("comment1 is not null");
            return (Criteria) this;
        }

        public Criteria andComment1EqualTo(String value) {
            addCriterion("comment1 =", value, "comment1");
            return (Criteria) this;
        }

        public Criteria andComment1NotEqualTo(String value) {
            addCriterion("comment1 <>", value, "comment1");
            return (Criteria) this;
        }

        public Criteria andComment1GreaterThan(String value) {
            addCriterion("comment1 >", value, "comment1");
            return (Criteria) this;
        }

        public Criteria andComment1GreaterThanOrEqualTo(String value) {
            addCriterion("comment1 >=", value, "comment1");
            return (Criteria) this;
        }

        public Criteria andComment1LessThan(String value) {
            addCriterion("comment1 <", value, "comment1");
            return (Criteria) this;
        }

        public Criteria andComment1LessThanOrEqualTo(String value) {
            addCriterion("comment1 <=", value, "comment1");
            return (Criteria) this;
        }

        public Criteria andComment1Like(String value) {
            addCriterion("comment1 like", value, "comment1");
            return (Criteria) this;
        }

        public Criteria andComment1NotLike(String value) {
            addCriterion("comment1 not like", value, "comment1");
            return (Criteria) this;
        }

        public Criteria andComment1In(List<String> values) {
            addCriterion("comment1 in", values, "comment1");
            return (Criteria) this;
        }

        public Criteria andComment1NotIn(List<String> values) {
            addCriterion("comment1 not in", values, "comment1");
            return (Criteria) this;
        }

        public Criteria andComment1Between(String value1, String value2) {
            addCriterion("comment1 between", value1, value2, "comment1");
            return (Criteria) this;
        }

        public Criteria andComment1NotBetween(String value1, String value2) {
            addCriterion("comment1 not between", value1, value2, "comment1");
            return (Criteria) this;
        }

        public Criteria andComment2IsNull() {
            addCriterion("comment2 is null");
            return (Criteria) this;
        }

        public Criteria andComment2IsNotNull() {
            addCriterion("comment2 is not null");
            return (Criteria) this;
        }

        public Criteria andComment2EqualTo(String value) {
            addCriterion("comment2 =", value, "comment2");
            return (Criteria) this;
        }

        public Criteria andComment2NotEqualTo(String value) {
            addCriterion("comment2 <>", value, "comment2");
            return (Criteria) this;
        }

        public Criteria andComment2GreaterThan(String value) {
            addCriterion("comment2 >", value, "comment2");
            return (Criteria) this;
        }

        public Criteria andComment2GreaterThanOrEqualTo(String value) {
            addCriterion("comment2 >=", value, "comment2");
            return (Criteria) this;
        }

        public Criteria andComment2LessThan(String value) {
            addCriterion("comment2 <", value, "comment2");
            return (Criteria) this;
        }

        public Criteria andComment2LessThanOrEqualTo(String value) {
            addCriterion("comment2 <=", value, "comment2");
            return (Criteria) this;
        }

        public Criteria andComment2Like(String value) {
            addCriterion("comment2 like", value, "comment2");
            return (Criteria) this;
        }

        public Criteria andComment2NotLike(String value) {
            addCriterion("comment2 not like", value, "comment2");
            return (Criteria) this;
        }

        public Criteria andComment2In(List<String> values) {
            addCriterion("comment2 in", values, "comment2");
            return (Criteria) this;
        }

        public Criteria andComment2NotIn(List<String> values) {
            addCriterion("comment2 not in", values, "comment2");
            return (Criteria) this;
        }

        public Criteria andComment2Between(String value1, String value2) {
            addCriterion("comment2 between", value1, value2, "comment2");
            return (Criteria) this;
        }

        public Criteria andComment2NotBetween(String value1, String value2) {
            addCriterion("comment2 not between", value1, value2, "comment2");
            return (Criteria) this;
        }

        public Criteria andComment3IsNull() {
            addCriterion("comment3 is null");
            return (Criteria) this;
        }

        public Criteria andComment3IsNotNull() {
            addCriterion("comment3 is not null");
            return (Criteria) this;
        }

        public Criteria andComment3EqualTo(String value) {
            addCriterion("comment3 =", value, "comment3");
            return (Criteria) this;
        }

        public Criteria andComment3NotEqualTo(String value) {
            addCriterion("comment3 <>", value, "comment3");
            return (Criteria) this;
        }

        public Criteria andComment3GreaterThan(String value) {
            addCriterion("comment3 >", value, "comment3");
            return (Criteria) this;
        }

        public Criteria andComment3GreaterThanOrEqualTo(String value) {
            addCriterion("comment3 >=", value, "comment3");
            return (Criteria) this;
        }

        public Criteria andComment3LessThan(String value) {
            addCriterion("comment3 <", value, "comment3");
            return (Criteria) this;
        }

        public Criteria andComment3LessThanOrEqualTo(String value) {
            addCriterion("comment3 <=", value, "comment3");
            return (Criteria) this;
        }

        public Criteria andComment3Like(String value) {
            addCriterion("comment3 like", value, "comment3");
            return (Criteria) this;
        }

        public Criteria andComment3NotLike(String value) {
            addCriterion("comment3 not like", value, "comment3");
            return (Criteria) this;
        }

        public Criteria andComment3In(List<String> values) {
            addCriterion("comment3 in", values, "comment3");
            return (Criteria) this;
        }

        public Criteria andComment3NotIn(List<String> values) {
            addCriterion("comment3 not in", values, "comment3");
            return (Criteria) this;
        }

        public Criteria andComment3Between(String value1, String value2) {
            addCriterion("comment3 between", value1, value2, "comment3");
            return (Criteria) this;
        }

        public Criteria andComment3NotBetween(String value1, String value2) {
            addCriterion("comment3 not between", value1, value2, "comment3");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}